<?php
include_once "menu_ventas.php";
include_once "filtro_cabecera.php";
include_once "../funciones/funciones_php.php";


?>

<html>
<head>
<link type="text/css" href="../css/start/jquery-ui-1.8.14.custom.css" rel="Stylesheet" />
<link rel="stylesheet" href="../css/plantilla.css" type="text/css" media="screen">
<link rel="stylesheet" type="text/css" href="../css/plantilla.css" />
<link rel="stylesheet" type="text/css" href="../css/tabla.css" />
<script type="text/javascript" src="../../js/jquery-1.5.2.js"></script>
		  <script type="text/javascript" src="../../js/jquery-ui-1.8.14.custom.min.js"></script>
        <script type='text/javascript' src='../../js/jquery.autocomplete.js'></script>
        <script type="text/javascript" src="../../js/jquery.validate.js"></script>
        <script type='text/javascript' src='../../js/funciones_js.js'></script>

		  <link rel="stylesheet" type="text/css" href="../../css/jquery.autocomplete.css" />


<script language="javascript">

$(document).ready(function()
    {

        $('#desde,#hasta').datepicker(
            {
                dateFormat: 'dd-mm-yy'
            });

        $('#buscar,#guardar,#continuar,#volver').button();
    });

function validadatos()
{
      if(!vacio(document.formulario.numero.value)){
      alerta('Debe ingresar numero de factura','Aviso');
      document.formulario.numero.focus();
      return false;
      }
      if ( parseInt(document.formulario.numero.value) != parseFloat(document.formulario.numero.value) ){
      alerta("Solo puede ingresar numeros enteros","Aviso");
      document.formulario.numero.value = '';
      document.formulario.numero.focus();
      return false;
      }
}

</script>

</head>
 <body onload="document.forms.formulario.numero.focus()">
<form action="generar_factura_cliente.php" method="post" name="formulario" id="formulario" onsubmit="javascript:return validadatos();">

<br />
<div id="titulo_seccion">
<fieldset>
    <table>
        <tr>
            <td><font>Factura ventas</font></td>
            <td align="right">
            <input tupe="button" name="volver" id="volver" value="Volver" onclick="location.href='factura_venta_cliente.php'">
            <input type="submit" name="continuar" id="continuar" value="Continuar" />
            </td>
        </tr>
    </table>
</fieldset>
</div>
<fieldset>
<legend>Datos Factura</legend>
<table>
    <tr>
        <td><label class="formulario" for="factura">Numero Factura Inicial:</label></td>
        <td><input type="text" name="numero_factura" id="numero"/></td>
    </tr>
</table>

</fieldset>
<br />

<?php
conectar();

//Busca todos los clientes de la empresa
$pg = sprintf("SELECT id_cliente
               FROM cliente
               ORDER BY id_cliente");
$consulta = pg_query($pg) or die ("Error en la consulta");

//Cantidad de ordenes de flete a facturar
$contador = 0;
$contador_2 = 0;

while($dat = pg_fetch_array($consulta))
{

    $id_cliente = $dat['id_cliente'];

    if(isset($_POST['desde'],$_POST['hasta']))
    {
        //Busca todos los departamentos del cliente
        $pg_1 = sprintf("SELECT *
                             FROM cliente_departamento
                             WHERE id_cliente = '%s'",pg_escape_string($id_cliente));
        $consulta_1 = pg_query($pg_1) or die ("Error en la consulta");

        $filas = pg_num_rows($consulta_1);
    }
    else
    {
        echo "<script>alert('Faltan datos');</script>";
        print "<meta http-equiv=Refresh content=\"0 ; url=factura_venta_cliente.php\">";
    }

    if($filas > 0)
    {
        $desde = fechaSql($_POST['desde']) or die("error en la fecha");
        $hasta = fechaSql($_POST['hasta']) or die("error en la fecha");

        $desde = $desde . " 00:00:00.000";
        $hasta = $hasta . " 23:59:59.999";

        $sql = sprintf("SELECT id_orden_flete
                        FROM orden_flete
                        WHERE id_cliente = '%s'
                        AND facturado = '%s'
                        AND subtotal > '%d'
                        AND fecha_emision BETWEEN ('%s') AND ('%s')"
                        ,pg_escape_string($id_cliente),pg_escape_string('FALSE'),pg_escape_string(0),pg_escape_string($desde),pg_escape_string($hasta));
        $cns_sql = pg_query($sql) or die("Error");

        $total_ordenes_cliente = pg_num_rows($cns_sql);

        if($total_ordenes_cliente > 0)
        {
            $contador_2++;

            $pg_2 = sprintf("SELECT id_tipo_factura_cliente
                             FROM cliente
                             WHERE id_cliente = '%s'",pg_escape_string($id_cliente));
            $consulta_2 = pg_query($pg_2) or die ("Error en la consulta");

            $data_2 = pg_fetch_array($consulta_2);

            $tipo_factura_cliente = $data_2['id_tipo_factura_cliente'];

            //Una Factura Por Cada Departamento

            if($tipo_factura_cliente == 1)
            {
                echo "<fieldset>
                        <legend>Detalle Cliente ". $id_cliente ."</legend>
                            <table border=0 cellspacing=0 class=data>
                                <thead class=data>
                                    <tr>
                                        <th>Departamento</th>
                                        <th>Cantidad Ordenes</th>
                                        <th>Subtotal</th>
                                    </tr>
                                </thead>";

                $i = 0;
                $cantidad_dptos = 0;

                while($reg = pg_fetch_array($consulta_1))
                {
                    $subtotal = 0;

                    $nombre_dpto = $reg['nombre_depto'];
                    $id_dpto = $reg['id_cliente_departamento'];

                    $pg_3 = sprintf("SELECT orden_flete.subtotal,orden_flete.id_orden_flete
                                     FROM orden_flete
                                     WHERE id_cliente_departamento = '%d'
                                     AND fecha_emision BETWEEN ('%s') AND ('%s')
                                     AND facturado = '%s'
                                     AND subtotal > 0",pg_escape_string($id_dpto),pg_escape_string($desde),pg_escape_string($hasta),pg_escape_string('FALSE'));
                    $consulta_3 = pg_query($pg_3) or die ("Error en la consulta");

                    $cantidad_ordenes = 0;

                    while($row = pg_fetch_array($consulta_3))
                    {
                        ($i % 2 == 0 )? $clase = " " : $clase = "class=odd";
                        $subtotal = $subtotal + $row['subtotal'];
                        $_SESSION['orden_flete'][$contador] = $row['id_orden_flete'];

                        $cantidad_ordenes++;
                        $contador++;
                    }

            if($cantidad_ordenes > 0)
            {
                $cantidad_dptos++;
                $_SESSION['cantidad_departamentos'] = $cantidad_dptos;
                $_SESSION['cantidad_ordenes'][$cantidad_dptos-1] = $cantidad_ordenes;
                $_SESSION['departamento'][$cantidad_dptos-1] = $nombre_dpto;
                $_SESSION['subtotal'][$cantidad_dptos-1] = $subtotal;
                $iva = round($subtotal * 0.19);
                $_SESSION['iva'][$cantidad_dptos-1] = $iva;
                $_SESSION['total'][$cantidad_dptos-1] = $iva + $subtotal;

            echo "<tbody class=data>
                          <tr " . $clase . ">
                            <td>". $nombre_dpto ."</td>
                            <td><a href=javascript:Abrir_ventana('detalle_orden_factura.php?nro_depto=". $id_dpto ."&cliente=". $id_cliente ."')>". $cantidad_ordenes. "</a></td>
                            <td>" .$subtotal. "</td>
                          </tr>
                          </tbody>";
            }
        $i++;

        }
        echo "</table>";
    echo "</fieldset>";

    $iva = round($subtotal * 0.19);
    $total = $subtotal + $iva;

    }

    //Una Factura Para Todo

    if($tipo_factura_cliente == 2)
    {
    echo "<fieldset>
    <legend>Detalle Cliente ". $id_cliente ."</legend>";
    echo "<table border=0 cellspacing=0 class=data>
                <thead class=data>
                <tr>
                    <th>Departamento</th>
                    <th>Cantidad Ordenes</th>
                    <th>Subtotal</th>
                </tr>
                </thead>";

        $subtotal_completo = 0;
        $i = 0;
        $ordenes_totales = 0;
        while($reg = pg_fetch_array($consulta_1))
        {
        $subtotal = 0;
            $nombre_dpto = $reg['nombre_depto'];
            $id_dpto = $reg['id_cliente_departamento'];

            $pg_3 = sprintf("SELECT orden_flete.subtotal,orden_flete.id_orden_flete
                             FROM orden_flete
                             WHERE id_cliente_departamento = '%d'
                             AND fecha_emision BETWEEN ('%s') AND ('%s')
                             AND facturado = '%s'
                             AND subtotal > 0",pg_escape_string($id_dpto),pg_escape_string($desde),pg_escape_string($hasta),pg_escape_string('FALSE'));
            $consulta_3 = pg_query($pg_3) or die ("Error en la consulta");

            $cantidad_ordenes = 0;

                while($row = pg_fetch_array($consulta_3))
                {
                   $reg['id_orden_flete'];
                   $subtotal = $subtotal + $row['subtotal'];
                   $_SESSION['orden_flete'][$contador] = $row['id_orden_flete'];

                   $cantidad_ordenes++;
                   $ordenes_totales++;
                   $contador++;
                }

            if($cantidad_ordenes > 0)
            {
            ($i % 2 == 0 )? $clase = " " : $clase = "class=odd";
            echo "<tbody class=data>
                          <tr " . $clase . ">
                            <td>". $nombre_dpto ."</td>
                            <td><a href=javascript:Abrir_ventana('detalle_orden_factura.php?nro_depto=". $id_dpto ."&cliente=". $id_cliente ."')>". $cantidad_ordenes. "</a></td>
                            <td>" .$subtotal. "</td>
                          </tr>
                          </tbody>";
            $subtotal_completo = $subtotal_completo + $subtotal;
            }
        $i++;
        }
        echo "</table>";
    echo "</fieldset>";

    $iva = round($subtotal * 0.19);
    $total = $subtotal + $iva;

    }

}
}
else
{
    echo "<legend>Aviso</legend>";
    echo "El codigo ingresado no existe";
}
}
if($contador_2 == 0)
{
    echo "<fieldset>
            <legend>Aviso</legend>
                No se encontraron resultados
          </fieldset>";
}
?>

<input type="hidden" value="<?php echo $_POST['desde']?>" name="desde"/>
<input type="hidden" value="<?php echo $_POST['hasta']?>" name="hasta"/>
<input type="hidden" value="<?php echo $contador?>" name="contador"/>
<input type="hidden" value="<?php echo $contador_2?>" name="contador_2"/>
</form>
</body>
</html>